package com.jsh.erp.datasource.entities;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class StatementAccountExample {

    protected String orderByClause;

    protected boolean distinct;

    protected List<StatementAccountExample.Criteria> oredCriteria;

    public StatementAccountExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<StatementAccountExample.Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(StatementAccountExample.Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public StatementAccountExample.Criteria or() {
        StatementAccountExample.Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public StatementAccountExample.Criteria createCriteria() {
        StatementAccountExample.Criteria criteria = createCriteriaInternal();
        if (oredCriteria.isEmpty()) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected StatementAccountExample.Criteria createCriteriaInternal() {
        return new Criteria();
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<StatementAccountExample.Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return !criteria.isEmpty();
        }

        public List<StatementAccountExample.Criterion> getAllCriteria() {
            return criteria;
        }

        public List<StatementAccountExample.Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new StatementAccountExample.Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new StatementAccountExample.Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new StatementAccountExample.Criterion(condition, value1, value2));
        }

        public StatementAccountExample.Criteria andIdIsNull() {
            addCriterion("id is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementTypeIsNull() {
            addCriterion("statement_type is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementIsNotNull() {
            addCriterion("statement_type is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementEqualTo(String value) {
            addCriterion("statement_type =", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementNotEqualTo(String value) {
            addCriterion("statement_type <>", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementGreaterThan(String value) {
            addCriterion("statement_type >", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementGreaterThanOrEqualTo(String value) {
            addCriterion("statement_type >=", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementLessThan(String value) {
            addCriterion("statement_type <", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementLessThanOrEqualTo(String value) {
            addCriterion("statement_type <=", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementLike(String value) {
            addCriterion("statement_type like", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementNotLike(String value) {
            addCriterion("statement_type not like", value, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementIn(List<String> values) {
            addCriterion("statement_type in", values, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementNotIn(List<String> values) {
            addCriterion("statement_type not in", values, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementBetween(String value1, String value2) {
            addCriterion("statement_type between", value1, value2, "supplier");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatementNotBetween(String value1, String value2) {
            addCriterion("statement_type not between", value1, value2, "supplier");
            return (StatementAccountExample.Criteria) this;
        }



        public StatementAccountExample.Criteria andStatisticalTypeIsNull() {
            addCriterion("statistical_type is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeIsNotNull() {
            addCriterion("statistical_type is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeEqualTo(String value) {
            addCriterion("statistical_type =", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeNotEqualTo(String value) {
            addCriterion("statistical_type <>", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeGreaterThan(String value) {
            addCriterion("statistical_type >", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeGreaterThanOrEqualTo(String value) {
            addCriterion("statistical_type >=", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeLessThan(String value) {
            addCriterion("statistical_type <", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeLessThanOrEqualTo(String value) {
            addCriterion("statistical_type <=", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeLike(String value) {
            addCriterion("statistical_type like", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeNotLike(String value) {
            addCriterion("statistical_type not like", value, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeIn(List<String> values) {
            addCriterion("statistical_type in", values, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeNotIn(List<String> values) {
            addCriterion("statistical_type not in", values, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeBetween(String value1, String value2) {
            addCriterion("statistical_type between", value1, value2, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andStatisticalTypeNotBetween(String value1, String value2) {
            addCriterion("statistical_type not between", value1, value2, "statisticalType");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andFactoryIsNull() {
            addCriterion("factory is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryIsNotNull() {
            addCriterion("factory is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryEqualTo(String value) {
            addCriterion("factory =", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryNotEqualTo(String value) {
            addCriterion("factory <>", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryGreaterThan(String value) {
            addCriterion("factory >", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryGreaterThanOrEqualTo(String value) {
            addCriterion("factory >=", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryLessThan(String value) {
            addCriterion("factory <", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryLessThanOrEqualTo(String value) {
            addCriterion("factory <=", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryLike(String value) {
            addCriterion("factory like", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryNotLike(String value) {
            addCriterion("factory not like", value, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryIn(List<String> values) {
            addCriterion("factory in", values, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryNotIn(List<String> values) {
            addCriterion("factory not in", values, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryBetween(String value1, String value2) {
            addCriterion("factory between", value1, value2, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFactoryNotBetween(String value1, String value2) {
            addCriterion("factory not between", value1, value2, "factory");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberIsNull() {
            addCriterion("supplier_number is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberIsNotNull() {
            addCriterion("supplier_number is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberEqualTo(String value) {
            addCriterion("supplier_number =", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberNotEqualTo(String value) {
            addCriterion("supplier_number <>", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberGreaterThan(String value) {
            addCriterion("supplier_number >", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberGreaterThanOrEqualTo(String value) {
            addCriterion("supplier_number >=", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberLessThan(String value) {
            addCriterion("supplier_number <", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberLessThanOrEqualTo(String value) {
            addCriterion("supplier_number <=", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberLike(String value) {
            addCriterion("supplier_number like", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberNotLike(String value) {
            addCriterion("supplier_number not like", value, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberIn(List<String> values) {
            addCriterion("supplier_number in", values, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberNotIn(List<String> values) {
            addCriterion("supplier_number not in", values, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberBetween(String value1, String value2) {
            addCriterion("supplier_number between", value1, value2, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNumberNotBetween(String value1, String value2) {
            addCriterion("supplier_number not between", value1, value2, "supplierNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameIsNull() {
            addCriterion("supplier_ame is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameIsNotNull() {
            addCriterion("supplier_ame is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameEqualTo(String value) {
            addCriterion("supplier_ame =", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameNotEqualTo(String value) {
            addCriterion("supplier_ame <>", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameGreaterThan(String value) {
            addCriterion("supplier_ame >", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameGreaterThanOrEqualTo(String value) {
            addCriterion("supplier_ame >=", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameLessThan(String value) {
            addCriterion("supplier_ame <", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameLessThanOrEqualTo(String value) {
            addCriterion("supplier_ame <=", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameLike(String value) {
            addCriterion("supplier_ame like", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameNotLike(String value) {
            addCriterion("supplier_ame not like", value, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameIn(List<String> values) {
            addCriterion("supplier_ame in", values, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameNotIn(List<String> values) {
            addCriterion("supplier_ame not in", values, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameBetween(String value1, String value2) {
            addCriterion("supplier_ame between", value1, value2, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andSupplierNameNotBetween(String value1, String value2) {
            addCriterion("supplier_ame not between", value1, value2, "supplierName");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberIsNull() {
            addCriterion("depot_number is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberIsNotNull() {
            addCriterion("depot_number is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberEqualTo(String value) {
            addCriterion("depot_number =", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberNotEqualTo(String value) {
            addCriterion("depot_number <>", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberGreaterThan(String value) {
            addCriterion("depot_number >", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberGreaterThanOrEqualTo(String value) {
            addCriterion("depot_number >=", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberLessThan(String value) {
            addCriterion("depot_number <", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberLessThanOrEqualTo(String value) {
            addCriterion("depot_number <=", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberLike(String value) {
            addCriterion("depot_number like", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberNotLike(String value) {
            addCriterion("depot_number not like", value, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberIn(List<String> values) {
            addCriterion("depot_number in", values, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberNotIn(List<String> values) {
            addCriterion("depot_number not in", values, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberBetween(String value1, String value2) {
            addCriterion("depot_number between", value1, value2, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andDepotNumberNotBetween(String value1, String value2) {
            addCriterion("depot_number not between", value1, value2, "depotNumber");
            return (StatementAccountExample.Criteria) this;
        }

        
        public StatementAccountExample.Criteria andLineProjectIsNull() {
            addCriterion("line_project is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectIsNotNull() {
            addCriterion("line_project is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectEqualTo(String value) {
            addCriterion("line_project =", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectNotEqualTo(String value) {
            addCriterion("line_project <>", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectGreaterThan(String value) {
            addCriterion("line_project >", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectGreaterThanOrEqualTo(String value) {
            addCriterion("line_project >=", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectLessThan(String value) {
            addCriterion("line_project <", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectLessThanOrEqualTo(String value) {
            addCriterion("line_project <=", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectLike(String value) {
            addCriterion("line_project like", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectNotLike(String value) {
            addCriterion("line_project not like", value, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectIn(List<String> values) {
            addCriterion("line_project in", values, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectNotIn(List<String> values) {
            addCriterion("line_project not in", values, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectBetween(String value1, String value2) {
            addCriterion("line_project between", value1, value2, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andLineProjectNotBetween(String value1, String value2) {
            addCriterion("line_project not between", value1, value2, "lineProject");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeIsNull() {
            addCriterion("bar_ode is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeIsNotNull() {
            addCriterion("bar_ode is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeEqualTo(Boolean value) {
            addCriterion("bar_ode =", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeNotEqualTo(Boolean value) {
            addCriterion("bar_ode <>", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeGreaterThan(Boolean value) {
            addCriterion("bar_ode >", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeGreaterThanOrEqualTo(Boolean value) {
            addCriterion("bar_ode >=", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeLessThan(Boolean value) {
            addCriterion("bar_ode <", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeLessThanOrEqualTo(Boolean value) {
            addCriterion("bar_ode <=", value, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeIn(List<Boolean> values) {
            addCriterion("bar_ode in", values, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeNotIn(List<Boolean> values) {
            addCriterion("bar_ode not in", values, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeBetween(Boolean value1, Boolean value2) {
            addCriterion("bar_ode between", value1, value2, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andBarCodeNotBetween(Boolean value1, Boolean value2) {
            addCriterion("bar_ode not between", value1, value2, "bar_ode");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsIsNull() {
            addCriterion("materials is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsIsNotNull() {
            addCriterion("materials is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsEqualTo(BigDecimal value) {
            addCriterion("materials =", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsNotEqualTo(BigDecimal value) {
            addCriterion("materials <>", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsGreaterThan(BigDecimal value) {
            addCriterion("materials >", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("materials >=", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsLessThan(BigDecimal value) {
            addCriterion("materials <", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsLessThanOrEqualTo(BigDecimal value) {
            addCriterion("materials <=", value, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsIn(List<BigDecimal> values) {
            addCriterion("materials in", values, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsNotIn(List<BigDecimal> values) {
            addCriterion("materials not in", values, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("materials between", value1, value2, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andMaterialsNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("materials not between", value1, value2, "advanceIn");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefIsNull() {
            addCriterion("fyr_ref is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefIsNotNull() {
            addCriterion("fyr_ref is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefEqualTo(BigDecimal value) {
            addCriterion("fyr_ref =", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefNotEqualTo(BigDecimal value) {
            addCriterion("fyr_ref <>", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefGreaterThan(BigDecimal value) {
            addCriterion("fyr_ref >", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fyr_ref >=", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefLessThan(BigDecimal value) {
            addCriterion("fyr_ref <", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fyr_ref <=", value, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefIn(List<BigDecimal> values) {
            addCriterion("fyr_ref in", values, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefNotIn(List<BigDecimal> values) {
            addCriterion("fyr_ref not in", values, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fyr_ref between", value1, value2, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andFyrRefNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fyr_ref not between", value1, value2, "fyrRef");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andReferenceCertificateIsNull() {
            addCriterion("reference_certificate is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateIsNotNull() {
            addCriterion("reference_certificate is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateEqualTo(Long value) {
            addCriterion("reference_certificate =", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateNotEqualTo(Long value) {
            addCriterion("reference_certificate <>", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateGreaterThan(Long value) {
            addCriterion("reference_certificate >", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateGreaterThanOrEqualTo(Long value) {
            addCriterion("reference_certificate >=", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateLessThan(Long value) {
            addCriterion("reference_certificate <", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateLessThanOrEqualTo(Long value) {
            addCriterion("reference_certificate <=", value, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateIn(List<Long> values) {
            addCriterion("reference_certificate in", values, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateNotIn(List<Long> values) {
            addCriterion("reference_certificate not in", values, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateBetween(Long value1, Long value2) {
            addCriterion("reference_certificate between", value1, value2, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andReferenceCertificateNotBetween(Long value1, Long value2) {
            addCriterion("reference_certificate not between", value1, value2, "referenceCertificate");
            return (StatementAccountExample.Criteria) this;
        }


        public StatementAccountExample.Criteria andRfItIsNull() {
            addCriterion("rfIt is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItIsNotNull() {
            addCriterion("rfIt is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItEqualTo(Long value) {
            addCriterion("rfIt =", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItNotEqualTo(Long value) {
            addCriterion("rfIt <>", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItGreaterThan(Long value) {
            addCriterion("rfIt >", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItGreaterThanOrEqualTo(Long value) {
            addCriterion("rfIt >=", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItLessThan(Long value) {
            addCriterion("rfIt <", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItLessThanOrEqualTo(Long value) {
            addCriterion("rfIt <=", value, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItIn(List<Long> values) {
            addCriterion("rfIt in", values, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItNotIn(List<Long> values) {
            addCriterion("rfIt not in", values, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItBetween(Long value1, Long value2) {
            addCriterion("rfIt between", value1, value2, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andRfItNotBetween(Long value1, Long value2) {
            addCriterion("rfIt not between", value1, value2, "rfIt");
            return (StatementAccountExample.Criteria) this;
        }


        public StatementAccountExample.Criteria  andMaterialCountIsNull() {
            addCriterion("material_count is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andMaterialCountIsNotNull() {
            addCriterion("material_count is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountEqualTo(Long value) {
            addCriterion("material_count =", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountNotEqualTo(Long value) {
            addCriterion("material_count <>", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountGreaterThan(Long value) {
            addCriterion("material_count >", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountGreaterThanOrEqualTo(Long value) {
            addCriterion("material_count >=", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountLessThan(Long value) {
            addCriterion("material_count <", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountLessThanOrEqualTo(Long value) {
            addCriterion("material_count <=", value, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountIn(List<Long> values) {
            addCriterion("material_count in", values, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountNotIn(List<Long> values) {
            addCriterion("material_count not in", values, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountBetween(Long value1, Long value2) {
            addCriterion("material_count between", value1, value2, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andMaterialCountNotBetween(Long value1, Long value2) {
            addCriterion("material_count not between", value1, value2, "materialCount");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andInvoiceNumIsNull() {
            addCriterion("invoice_num is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumIsNotNull() {
            addCriterion("invoice_num is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumEqualTo(Long value) {
            addCriterion("invoice_num =", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumNotEqualTo(Long value) {
            addCriterion("invoice_num <>", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumGreaterThan(Long value) {
            addCriterion("invoice_num >", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumGreaterThanOrEqualTo(Long value) {
            addCriterion("invoice_num >=", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumLessThan(Long value) {
            addCriterion("invoice_num <", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumLessThanOrEqualTo(Long value) {
            addCriterion("invoice_num <=", value, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumIn(List<Long> values) {
            addCriterion("invoice_num in", values, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumNotIn(List<Long> values) {
            addCriterion("invoice_num not in", values, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumBetween(Long value1, Long value2) {
            addCriterion("invoice_num between", value1, value2, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andInvoiceNumNotBetween(Long value1, Long value2) {
            addCriterion("invoice_num not between", value1, value2, "invoiceNum");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andOrderPeopleIsNull() {
            addCriterion("order_people is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleIsNotNull() {
            addCriterion("order_people is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleEqualTo(Long value) {
            addCriterion("order_people =", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleNotEqualTo(Long value) {
            addCriterion("order_people <>", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleGreaterThan(Long value) {
            addCriterion("order_people >", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleGreaterThanOrEqualTo(Long value) {
            addCriterion("order_people >=", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleLessThan(Long value) {
            addCriterion("order_people <", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleLessThanOrEqualTo(Long value) {
            addCriterion("order_people <=", value, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleIn(List<Long> values) {
            addCriterion("order_people in", values, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleNotIn(List<Long> values) {
            addCriterion("order_people not in", values, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleBetween(Long value1, Long value2) {
            addCriterion("order_people between", value1, value2, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria  andOrderPeopleNotBetween(Long value1, Long value2) {
            addCriterion("order_people not between", value1, value2, "orderPeople");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andUnitPriceIsNull() {
            addCriterion("unit_price is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceIsNotNull() {
            addCriterion("unit_price is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceEqualTo(Long value) {
            addCriterion("unit_price =", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceNotEqualTo(Long value) {
            addCriterion("unit_price <>", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceGreaterThan(Long value) {
            addCriterion("unit_price >", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceGreaterThanOrEqualTo(Long value) {
            addCriterion("unit_price >=", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceLessThan(Long value) {
            addCriterion("unit_price <", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceLessThanOrEqualTo(Long value) {
            addCriterion("unit_price <=", value, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceIn(List<Long> values) {
            addCriterion("unit_price in", values, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceNotIn(List<Long> values) {
            addCriterion("unit_price not in", values, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceBetween(Long value1, Long value2) {
            addCriterion("unit_price between", value1, value2, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andUnitPriceNotBetween(Long value1, Long value2) {
            addCriterion("unit_price not between", value1, value2, "unitPrice");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andNeedInvoiceIsNull() {
            addCriterion("need_invoice is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceIsNotNull() {
            addCriterion("need_invoice is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceEqualTo(Long value) {
            addCriterion("need_invoice =", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceNotEqualTo(Long value) {
            addCriterion("need_invoice <>", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceGreaterThan(Long value) {
            addCriterion("need_invoice >", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceGreaterThanOrEqualTo(Long value) {
            addCriterion("need_invoice >=", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceLessThan(Long value) {
            addCriterion("need_invoice <", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceLessThanOrEqualTo(Long value) {
            addCriterion("need_invoice <=", value, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceIn(List<Long> values) {
            addCriterion("need_invoice in", values, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceNotIn(List<Long> values) {
            addCriterion("need_invoice not in", values, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceBetween(Long value1, Long value2) {
            addCriterion("need_invoice between", value1, value2, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria   andNeedInvoiceNotBetween(Long value1, Long value2) {
            addCriterion("need_invoice not between", value1, value2, "needInvoice");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria  andNeedInvoiceTaxIsNull() {
            addCriterion("need_invoice_tax is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxIsNotNull() {
            addCriterion("need_invoice_tax is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxEqualTo(Long value) {
            addCriterion("need_invoice_tax =", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxNotEqualTo(Long value) {
            addCriterion("need_invoice_tax <>", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxGreaterThan(Long value) {
            addCriterion("need_invoice_tax >", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxGreaterThanOrEqualTo(Long value) {
            addCriterion("need_invoice_tax >=", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxLessThan(Long value) {
            addCriterion("need_invoice_tax <", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxLessThanOrEqualTo(Long value) {
            addCriterion("need_invoice_tax <=", value, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxIn(List<Long> values) {
            addCriterion("need_invoice_tax in", values, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxNotIn(List<Long> values) {
            addCriterion("need_invoice_tax not in", values, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxBetween(Long value1, Long value2) {
            addCriterion("need_invoice_tax between", value1, value2, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andNeedInvoiceTaxNotBetween(Long value1, Long value2) {
            addCriterion("need_invoice_tax not between", value1, value2, "needInvoiceTax");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria  andCurrencyTypeIsNull() {
            addCriterion("need_invoice_tax is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeIsNotNull() {
            addCriterion("need_invoice_tax is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeEqualTo(Long value) {
            addCriterion("need_invoice_tax =", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeNotEqualTo(Long value) {
            addCriterion("need_invoice_tax <>", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeGreaterThan(Long value) {
            addCriterion("need_invoice_tax >", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeGreaterThanOrEqualTo(Long value) {
            addCriterion("need_invoice_tax >=", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeLessThan(Long value) {
            addCriterion("need_invoice_tax <", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeLessThanOrEqualTo(Long value) {
            addCriterion("need_invoice_tax <=", value, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeIn(List<Long> values) {
            addCriterion("need_invoice_tax in", values, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeNotIn(List<Long> values) {
            addCriterion("need_invoice_tax not in", values, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeBetween(Long value1, Long value2) {
            addCriterion("need_invoice_tax between", value1, value2, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria    andCurrencyTypeNotBetween(Long value1, Long value2) {
            addCriterion("need_invoice_tax not between", value1, value2, "currencyType");
            return (StatementAccountExample.Criteria) this;
        }
        public StatementAccountExample.Criteria andTenantIdIsNull() {
            addCriterion("tenant_id is null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdIsNotNull() {
            addCriterion("tenant_id is not null");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdEqualTo(Long value) {
            addCriterion("tenant_id =", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdNotEqualTo(Long value) {
            addCriterion("tenant_id <>", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdGreaterThan(Long value) {
            addCriterion("tenant_id >", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdGreaterThanOrEqualTo(Long value) {
            addCriterion("tenant_id >=", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdLessThan(Long value) {
            addCriterion("tenant_id <", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdLessThanOrEqualTo(Long value) {
            addCriterion("tenant_id <=", value, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdIn(List<Long> values) {
            addCriterion("tenant_id in", values, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdNotIn(List<Long> values) {
            addCriterion("tenant_id not in", values, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdBetween(Long value1, Long value2) {
            addCriterion("tenant_id between", value1, value2, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }

        public StatementAccountExample.Criteria andTenantIdNotBetween(Long value1, Long value2) {
            addCriterion("tenant_id not between", value1, value2, "tenantId");
            return (StatementAccountExample.Criteria) this;
        }
        public Criteria andDeleteFlagIsNull() {
            addCriterion("delete_flag is null");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagIsNotNull() {
            addCriterion("delete_flag is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagEqualTo(String value) {
            addCriterion("delete_flag =", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagNotEqualTo(String value) {
            addCriterion("delete_flag <>", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagGreaterThan(String value) {
            addCriterion("delete_flag >", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagGreaterThanOrEqualTo(String value) {
            addCriterion("delete_flag >=", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagLessThan(String value) {
            addCriterion("delete_flag <", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagLessThanOrEqualTo(String value) {
            addCriterion("delete_flag <=", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagLike(String value) {
            addCriterion("delete_flag like", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagNotLike(String value) {
            addCriterion("delete_flag not like", value, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagIn(List<String> values) {
            addCriterion("delete_flag in", values, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagNotIn(List<String> values) {
            addCriterion("delete_flag not in", values, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagBetween(String value1, String value2) {
            addCriterion("delete_flag between", value1, value2, "deleteFlag");
            return (Criteria) this;
        }

        public Criteria andDeleteFlagNotBetween(String value1, String value2) {
            addCriterion("delete_flag not between", value1, value2, "deleteFlag");
            return (Criteria) this;
        }

    }

    public static class Criteria extends StatementAccountExample.GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}
